namespace Charisma.Tests.Models.Northwind
{
  public abstract class Product
  {
    public int Id { get; private set; }
    public string ProductName { get; set; }
    public Supplier Supplier { get; set; }
    public Category Category { get; set; }
    public ProductType ProductType { get; protected set; }
    public decimal UnitPrice { get; set; }
    public short UnitsInStock { get; set; }
    public short UnitsOnOrder { get; set; }
    public short ReorderLevel { get; set; }
    public string QuantityPerUnit { get; set; }
  }

  public class ActiveProduct : Product
  {
    public ActiveProduct()
    {
      ProductType = ProductType.Active;
    }
  }

  public class DiscontinuedProduct : Product
  {
    public DiscontinuedProduct()
    {
      ProductType = ProductType.Discontinued;
    }
  }
}